﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="PublishSubscribeDataSet" targetNamespace="http://tempuri.org/PublishSubscribeDataSet.xsd" xmlns:mstns="http://tempuri.org/PublishSubscribeDataSet.xsd" xmlns="http://tempuri.org/PublishSubscribeDataSet.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
  <xs:annotation>
    <xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
      <DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
        <Connections>
          <Connection AppSettingsObjectName="Settings" AppSettingsPropertyName="PublishSubscribeConnectionString" ConnectionStringObject="" IsAppSettingsProperty="True" Modifier="Assembly" Name="PublishSubscribeConnectionString (Settings)" ParameterPrefix="@" PropertyReference="ApplicationSettings.ServiceModelEx.Properties.Settings.GlobalReference.Default.PublishSubscribeConnectionString" Provider="System.Data.SqlClient">
          </Connection>
        </Connections>
        <Tables>
          <TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="PersistentSubscribersTableAdapter" GeneratorDataComponentClassName="PersistentSubscribersTableAdapter" Name="PersistentSubscribers" UserDataComponentName="PersistentSubscribersTableAdapter">
            <MainSource>
              <DbSource ConnectionRef="PublishSubscribeConnectionString (Settings)" DbObjectName="PublishSubscribe.dbo.PersistentSubscribers" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="True" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="True" UserGetMethodName="GetData" UserSourceName="Fill">
                <DeleteCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="False">
                    <CommandText>DELETE FROM [dbo].[PersistentSubscribers] WHERE (([Address] = @Original_Address) AND ([Operation] = @Original_Operation) AND ([Contract] = @Original_Contract) AND ([ID] = @Original_ID))</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_Address" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Address" SourceColumnNullMapping="False" SourceVersion="Original">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_Operation" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Operation" SourceColumnNullMapping="False" SourceVersion="Original">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_Contract" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Contract" SourceColumnNullMapping="False" SourceVersion="Original">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="False" SourceVersion="Original">
                      </Parameter>
                    </Parameters>
                  </DbCommand>
                </DeleteCommand>
                <InsertCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="False">
                    <CommandText>INSERT INTO [dbo].[PersistentSubscribers] ([Address], [Operation], [Contract]) VALUES (@Address, @Operation, @Contract);
SELECT Address, Operation, Contract, ID FROM PersistentSubscribers WHERE (ID = SCOPE_IDENTITY())</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Address" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Address" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Operation" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Operation" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Contract" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Contract" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                    </Parameters>
                  </DbCommand>
                </InsertCommand>
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="False">
                    <CommandText>SELECT Address, Operation, Contract, ID FROM dbo.PersistentSubscribers</CommandText>
                    <Parameters>
                    </Parameters>
                  </DbCommand>
                </SelectCommand>
                <UpdateCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="False">
                    <CommandText>UPDATE [dbo].[PersistentSubscribers] SET [Address] = @Address, [Operation] = @Operation, [Contract] = @Contract WHERE (([Address] = @Original_Address) AND ([Operation] = @Original_Operation) AND ([Contract] = @Original_Contract) AND ([ID] = @Original_ID));
SELECT Address, Operation, Contract, ID FROM PersistentSubscribers WHERE (ID = @ID)</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Address" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Address" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Operation" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Operation" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Contract" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Contract" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_Address" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Address" SourceColumnNullMapping="False" SourceVersion="Original">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_Operation" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Operation" SourceColumnNullMapping="False" SourceVersion="Original">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_Contract" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="Contract" SourceColumnNullMapping="False" SourceVersion="Original">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="False" SourceVersion="Original">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="ID" ColumnName="ID" DataSourceName="PublishSubscribe.dbo.PersistentSubscribers" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="ID" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                    </Parameters>
                  </DbCommand>
                </UpdateCommand>
              </DbSource>
            </MainSource>
            <Mappings>
              <Mapping SourceColumn="Address" DataSetColumn="Address" />
              <Mapping SourceColumn="Operation" DataSetColumn="Operation" />
              <Mapping SourceColumn="Contract" DataSetColumn="Contract" />
              <Mapping SourceColumn="ID" DataSetColumn="ID" />
            </Mappings>
            <Sources>
              <DbSource ConnectionRef="PublishSubscribeConnectionString (Settings)" DbObjectName="PublishSubscribe.dbo.PersistentSubscribers" DbObjectType="Table" GenerateMethods="Get" GenerateShortCommands="True" GeneratorGetMethodName="GetAllSubscribers" GetMethodModifier="Public" GetMethodName="GetAllSubscribers" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="True" UserGetMethodName="GetAllSubscribers" UserSourceName="GetAllSubscribers1">
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="True">
                    <CommandText>SELECT Address, Operation, Contract, ID FROM dbo.PersistentSubscribers</CommandText>
                    <Parameters>
                    </Parameters>
                  </DbCommand>
                </SelectCommand>
              </DbSource>
              <DbSource ConnectionRef="PublishSubscribeConnectionString (Settings)" DbObjectName="PublishSubscribe.dbo.PersistentSubscribers" DbObjectType="Table" GenerateMethods="Get" GenerateShortCommands="True" GeneratorGetMethodName="GetSubscribersByAddressContractOperation" GeneratorSourceName="FillBy" GetMethodModifier="Public" GetMethodName="GetSubscribersByAddressContractOperation" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="True" UserGetMethodName="GetSubscribersByAddressContractOperation" UserSourceName="GetSubscribersByAddressContractOperation1">
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="True">
                    <CommandText>SELECT Address, Operation, Contract, ID FROM dbo.PersistentSubscribers WHERE Address=@address AND  Contract = @contract AND Operation = @operation</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="False" AutogeneratedName="address" ColumnName="Address" DataSourceName="PublishSubscribe.dbo.PersistentSubscribers" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@address" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="Address" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="contract" ColumnName="Contract" DataSourceName="PublishSubscribe.dbo.PersistentSubscribers" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@contract" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="Contract" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="operation" ColumnName="Operation" DataSourceName="PublishSubscribe.dbo.PersistentSubscribers" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@operation" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="Operation" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                    </Parameters>
                  </DbCommand>
                </SelectCommand>
              </DbSource>
              <DbSource ConnectionRef="PublishSubscribeConnectionString (Settings)" DbObjectName="PublishSubscribe.dbo.PersistentSubscribers" DbObjectType="Table" GenerateMethods="Get" GenerateShortCommands="True" GeneratorGetMethodName="GetSubscribersFromAddress" GetMethodModifier="Public" GetMethodName="GetSubscribersFromAddress" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="True" UserGetMethodName="GetSubscribersFromAddress" UserSourceName="GetSubscribersFromAddress1">
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="True">
                    <CommandText>SELECT Address, Operation, Contract, ID FROM dbo.PersistentSubscribers WHERE Address=@address</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="False" AutogeneratedName="address" ColumnName="Address" DataSourceName="PublishSubscribe.dbo.PersistentSubscribers" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@address" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="Address" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                    </Parameters>
                  </DbCommand>
                </SelectCommand>
              </DbSource>
              <DbSource ConnectionRef="PublishSubscribeConnectionString (Settings)" DbObjectName="PublishSubscribe.dbo.PersistentSubscribers" DbObjectType="Table" GenerateMethods="Get" GenerateShortCommands="True" GeneratorGetMethodName="GetSubscribersToContract" GetMethodModifier="Public" GetMethodName="GetSubscribersToContract" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="True" UserGetMethodName="GetSubscribersToContract" UserSourceName="GetSubscribersToContract1">
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="True">
                    <CommandText>SELECT Address, Operation, Contract, ID FROM dbo.PersistentSubscribers WHERE Contract = @contract </CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="False" AutogeneratedName="contract" ColumnName="Contract" DataSourceName="PublishSubscribe.dbo.PersistentSubscribers" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@contract" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="Contract" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                    </Parameters>
                  </DbCommand>
                </SelectCommand>
              </DbSource>
              <DbSource ConnectionRef="PublishSubscribeConnectionString (Settings)" DbObjectName="PublishSubscribe.dbo.PersistentSubscribers" DbObjectType="Table" GenerateMethods="Get" GenerateShortCommands="True" GeneratorGetMethodName="GetSubscribersToContractOperation" GetMethodModifier="Public" GetMethodName="GetSubscribersToContractOperation" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="True" UserGetMethodName="GetSubscribersToContractOperation" UserSourceName="GetSubscribersToContractOperation1">
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="True">
                    <CommandText>SELECT Address, Operation, Contract, ID FROM dbo.PersistentSubscribers WHERE Contract = @contract AND Operation = @operation</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="False" AutogeneratedName="contract" ColumnName="Contract" DataSourceName="PublishSubscribe.dbo.PersistentSubscribers" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@contract" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="Contract" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                      <Parameter AllowDbNull="False" AutogeneratedName="operation" ColumnName="Operation" DataSourceName="PublishSubscribe.dbo.PersistentSubscribers" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@operation" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="Operation" SourceColumnNullMapping="False" SourceVersion="Current">
                      </Parameter>
                    </Parameters>
                  </DbCommand>
                </SelectCommand>
              </DbSource>
            </Sources>
          </TableAdapter>
        </Tables>
        <Sources>
        </Sources>
      </DataSource>
    </xs:appinfo>
  </xs:annotation>
  <xs:element name="PublishSubscribeDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:Generator_UserDSName="PublishSubscribeDataSet" msprop:Generator_DataSetName="PublishSubscribeDataSet">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="PersistentSubscribers" msprop:Generator_UserTableName="PersistentSubscribers" msprop:Generator_RowDeletedName="PersistentSubscribersRowDeleted" msprop:Generator_RowChangedName="PersistentSubscribersRowChanged" msprop:Generator_RowClassName="PersistentSubscribersRow" msprop:Generator_RowChangingName="PersistentSubscribersRowChanging" msprop:Generator_RowEvArgName="PersistentSubscribersRowChangeEvent" msprop:Generator_RowEvHandlerName="PersistentSubscribersRowChangeEventHandler" msprop:Generator_TableClassName="PersistentSubscribersDataTable" msprop:Generator_TableVarName="tablePersistentSubscribers" msprop:Generator_RowDeletingName="PersistentSubscribersRowDeleting" msprop:Generator_TablePropName="PersistentSubscribers">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Address" msprop:Generator_UserColumnName="Address" msprop:Generator_ColumnVarNameInTable="columnAddress" msprop:Generator_ColumnPropNameInRow="Address" msprop:Generator_ColumnPropNameInTable="AddressColumn">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="500" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="Operation" msprop:Generator_UserColumnName="Operation" msprop:Generator_ColumnVarNameInTable="columnOperation" msprop:Generator_ColumnPropNameInRow="Operation" msprop:Generator_ColumnPropNameInTable="OperationColumn">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="500" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="Contract" msprop:Generator_UserColumnName="Contract" msprop:Generator_ColumnVarNameInTable="columnContract" msprop:Generator_ColumnPropNameInRow="Contract" msprop:Generator_ColumnPropNameInTable="ContractColumn">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="50" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="ID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msprop:Generator_UserColumnName="ID" msprop:Generator_ColumnVarNameInTable="columnID" msprop:Generator_ColumnPropNameInRow="ID" msprop:Generator_ColumnPropNameInTable="IDColumn" type="xs:int" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">
      <xs:selector xpath=".//mstns:PersistentSubscribers" />
      <xs:field xpath="mstns:ID" />
    </xs:unique>
  </xs:element>
</xs:schema>